Hadoop3.X分布式高可用集群部署 |
您所在的位置:网站首页 › zookeeper 实现故障转移 › Hadoop3.X分布式高可用集群部署 |
一、部署规划
1.1 版本说明
软件版本操作系统CentOS Linux release 7.8.2003 (Core)hadoophadoop-3.2.2JAVAjdk-8u271-linux-x64
1.2 集群规划
hostnameIP组件master172.16.20.200NameNodeZKFailoverControllersecondmaster172.16.20.201NameNodeZKFailoverControllerslave1172.16.20.202ZookeeperjournalnodeDataNodeNodeManageResourceManagerslave2172.16.20.203ZookeeperjournalnodeDataNodeNodeManageResourceManagerslave3172.16.20.204ZookeeperjournalnodeDataNodeNodeManageResourceManager
节点规划说明: zookeeper集群: 需要至少3个节点,并且节点数为奇数个,可以部署在任意独立节点上,NameNode及ResourceManager依赖zookeeper进行主备选举和切换 NameNode: 至少需要2个节点,一主多备,可以部署在任意独立节点上,用于管理HDFS的名称空间和数据块映射,依赖zookeeper和zkfc实现高可用和自动故障转移,并且依赖journalnode实现状态同步 ZKFailoverController: 即zkfc,在所有NameNode节点上启动,用于监视和管理NameNode状态,参与故障转移 journalnode: 至少需要3个节点,并且节点数为奇数个,可以部署在任意独立节点上,用于主备NameNode状态信息同步 ResourceManager: 至少需要2个节点,一主多备,可以部署在任意独立节点上,依赖zookeeper实现高可用和自动故障转移,用于资源分配和调度 DataNode: 至少需要3个节点,因为hdfs默认副本数为3,可以部署在任意独立节点上,用于实际数据存储 NodeManage: 部署在所有DataNode节点上,用于节点资源管理和监控 1.3 配置目录规划 服务目录hadoop namenode/data1/hadoop/dfs/name, /data2/hadoop/dfs/namehadoop datanode/data1/hadoop/dfs/data, /data2/hadoop/dfs/datahadoop 临时目录/data/hadoop/tmpzookeeper 数据目录/data/zookeeper/data/zookeeper Log目录/data/zookeeper/logs/每台一个默认数据分区/data, 并挂载3块数据硬盘, 分别挂载到/data1, /data2, /data3 二、 环境部署 2.1 系统配置Hosts文件 cat >> /etc/hosts > /etc/security/limits.conf data1,data2,/data3} mkdir -pv /data/zookeeper/{data,logs}磁盘分区 parted /dev/sdb # 将磁盘设置为gpt模式 mklabel gpt # 只分一个分区,大小为从其实扇区到最后 mkpart primary 2048s -1 # 查看 print ## 保存退出 quit格式化 mkfs.xfs -L /data1 -f /dev/sdb1磁盘挂载 vim /etc/fstab // 加入 LABEL="/data1" /data1 xfs defaults 0 0 ## 自动挂载 mount -adata2,data3操作相同, 其余节点同理 三、zookeeper集群部署slave1节点 3.1 下载解压下载地址: https://dlcdn.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz tar -zxf apache-zookeeper-3.7.0-bin.tar.gz -C /opt/hadoop/ ln -s /opt/hadoop/apache-zookeeper-3.7.0-bin /usr/local/zookeeper各节点配置环境变量, /etc/profie下加入 cat >> /etc/profile fs.defaultFS hdfs://mycluster hadoop.tmp.dir /data/hadoop/tmp io.file.buffer.size 4096 ha.zookeeper.quorum slave1:2181,slave2:2181,slave3:2181 EOF 4.2.3 hdfs-site.xml cat > hdfs-site.xml dfs.namenode.rpc-address.mycluster.nn1 master:8020 dfs.namenode.rpc-address.mycluster.nn2 secondmaster:8020 dfs.namenode.http-address.mycluster.nn1 master:9870 dfs.namenode.http-address.mycluster.nn2 secondmaster:9870 dfs.replication 3 Hadoop的备份系数是指每个block在hadoop集群中有几份,系数越高,冗余性越好,占用存储也越多 dfs.blocksize 134217728 dfs.namenode.name.dir file:///data1/hadoop/dfs/name,file:///data2/hadoop/dfs/name,file:///data3/hadoop/dfs/name, namenode上存储hdfs名字空间元数据 dfs.datanode.data.dir file:///data1/hadoop/dfs/data,file:///data2/hadoop/dfs/data,file:///data3/hadoop/dfs/name datanode上数据块的物理存储位置 dfs.namenode.shared.edits.dir qjournal://slave1:8485;slave2:8485;slave3:8485/mycluster dfs.journalnode.edits.dir /data/hadoop/tmp/dfs/journal dfs.client.failover.proxy.provider.mycluster org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider dfs.ha.automatic-failover.enabled true dfs.ha.fencing.methods sshfence shell(/bin/true) dfs.ha.fencing.ssh.private-key-files /root/.ssh/id_rsa dfs.ha.fencing.ssh.connect-timeout 30000 ha.failover-controller.cli-check.rpc-timeout.ms 60000 EOF配置说明: dfs.nameservices 配置命名空间,所有namenode节点配置在命名空间mycluster下 dfs.replication 指定dataNode存储block的副本数量,默认值是3个 dfs.blocksize 大型文件系统HDFS块大小为256MB,默认是128MB dfs.namenode.rpc-address 各个namenode的 rpc通讯地址 dfs.namenode.http-address 各个namenode的http状态页面地址 dfs.namenode.name.dir 存放namenode名称表(fsimage)的目录 dfs.datanode.data.dir 存放datanode块的目录 dfs.namenode.shared.edits.dir HA集群中多个NameNode之间的共享存储上的目录。此目录将由活动服务器写入,由备用服务器读取,以保持名称空间的同步。 dfs.journalnode.edits.dir 存储journal edit files的目录 dfs.ha.automatic-failover.enabled 是否启用故障自动处理 dfs.ha.fencing.methods 处于故障状态的时候hadoop要防止脑裂问题,所以在standby机器切换到active后,hadoop还会试图通过内部网络的ssh连过去,并把namenode的相关进程给kill掉,一般是sshfence 就是ssh方式 dfs.ha.fencing.ssh.private-key-files 配置了 ssh用的 key 的位置。 4.2.3 mapred-site.xml cat > mapred-site.xml yarn-site.xml workers |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |